﻿/**
 * @file guild_crystal_logic.h
 * @date 2021/07/29 15:51
 * 
 * @author harrybao (harrybao@123u.com)
 * 
 * @brief 公会水晶模块逻辑
 * 
 * @version v1.0.0
 * 
 * @copyright Copyright © 2021 All Rights Reserved 上海欢乐互娱网络科技有限公司
 * 
 * @par history:
 * <table>
 * <tr><th>Date                     <th>Version     <th>Author      <th>Description
 * <tr><td>2021/07/29 15:51         <td>1.0.0       <td>harrybao    <td>创建初始版本
 * </table>
 */

#pragma once


#include "error/error_code.h"
#include "guild/guild.h"

namespace guild_service {

/**
 * @brief 公会水晶模块逻辑类
 *
 */
class GuildModuleCrystalLogic {
public:
  /**
   * @brief 公会水晶祈福
   * 
   * @param role_uuid 角色唯一id
   * @param guild_crystal_id 建筑id
   * @param ec 错误码
   * @return true 升级成功
   * @return false 升级失败
   */
  static bool CrystalPray(const role_uuid_type role_uuid, uint32_t crystal_id, error_code &ec);
  
  /**
   * @brief 公会水晶充能
   * 
   * @param role_uuid 
   * @param crystal_id 
   * @param ec 
   * @return true 
   * @return false 
   */
  static bool CrystalCharge(const role_uuid_type role_uuid, uint32_t crystal_id, error_code &ec);
};

} // namespace guild_service